home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / rbbsdocs.zip / RBBSDOCS.12B < prev    next >
Text File  |  1990-11-05  |  27KB  |  528 lines

  1.  
  2.  
  3.     RBBS-PC 17.3A            TECHNICAL REFERENCE MANUAL                   12-10
  4.  
  5.  
  6.          DKAAAA.ZIP is ready for download.
  7.          DKAAAAa.ZIP is ready for download.
  8.          DKAAAAb.ZIP is read for download.
  9.  
  10.     As each file is downloaded successfully it  is removed from the list and is
  11.     no longer displayed to the user as ready for download.
  12.  
  13.     12.6.2 The "Library" Subsystem and PC-SIG's CD-ROM
  14.     --------------------------------------------------
  15.     The CD-ROM published by PC-SIG consists of a DOS subdirectory for each 360K
  16.     diskette in the PC-SIG  library. Sometimes the disk contains all  the files
  17.     already in the ARC format  other times they just contain a group  of files.
  18.     The key  here is  the A)rchive  function.   The resulting  file to  be made
  19.     available for download will NEVER be greater than 360k.   This is important
  20.     since a caller may only have a floppy based  system and could not capture a
  21.     file any larger than a 360k floppy can contain.
  22.  
  23.     The  PC-SIG's CD-ROM  creates the  problem of  listing both  the individual
  24.     files contained  on each diskette as  well as a summary  description of the
  25.     individual disks.   This can be solved by listing each of the 18,000+ files
  26.     in  the MASTER.CDR using positions 43-76 for the description, positions 77-
  27.     79  for the disk  drive, and positions  80-82 for the  valid categories for
  28.     downloading.  These are contained in the file specified by CONFIG parameter
  29.     217.
  30.  
  31.     MASTER.CDR might also  contain a list of  names of the files  that would be
  32.     created  by the  A)rchive  function.   This  allows the  caller  to scan  a
  33.     category (i.e. category 200)  for disk titles only.  Note that the files do
  34.     not exist until the user  uses the A)rchive function.  A SysOp who did  not
  35.     wish to allow individual file downloads might only include these entries in
  36.     the MASTER.CDR rather than the other 18,000 entries.
  37.  
  38.     The directory for the PC-SIG CD-ROM is over 1.5 megabytes in length and can
  39.     take up to 10 minutes to search completely (when using a PC at 4.77 MHz).
  40.  
  41.     If the SysOp is using FMS, it is recommended that the category file for the
  42.     normal FMS directory and the category file for the Library FMS directory be
  43.     the same (PC-SIG has 27 different categories for its files).
  44.  
  45.     12.7 Creating the Personal Files Directory
  46.     ------------------------------------------
  47.     RBBS-PC's  "personal" file  support  is analogous  to RBBS-PC's  support of
  48.     "personal"  messages in  that  these files  are  specially addressed  to  a
  49.     specific  caller  or group  of callers  based on  security.   Personal file
  50.     downloads differ from the general download in three major ways:
  51.  
  52.       1) the time limit check is bypassed in personal downloads, meaning that a
  53.          qualifying caller can download a file regardless of time left.
  54.  
  55.       2) only  files  explicitly  listed  in  the  personal  directory  can  be
  56.          downloaded.  Normally files to be downloaded will be looked for on the
  57.          disk(s) where  files are  available for downloading  whether they  are
  58.          listed in a directory or not.
  59.  
  60.       3) only callers  with  matching user  record or  sufficient security  can
  61.          download a  file.  Normally  any caller with security  enough to issue
  62.          the download command can download a file.
  63.  
  64.  
  65.  
  66.  
  67.     RBBS-PC's FILE MANAGEMENT SUBSYSTEM                                   12-11
  68.  
  69.  
  70.     Personal  files provide  a  way that  files  can be  delivered to  specific
  71.     individuals.   As  an example,  a  vendor's support  bulletin  board for  a
  72.     software  product might  make  the  upgrade  downloadable  only  by  paying
  73.     customers.    A  credit  reporting  corporation  can  make  credit  reports
  74.     electronically available  only to the people  who order them.   Or, a SysOp
  75.     can make a file privately available to only one caller.
  76.  
  77.     One of  the most  useful applications  for  personal downloads  is to  make
  78.     certain files available  regardless of time remaining.   Previously, SysOps
  79.     had to  increase the security of  callers or set artificially  high session
  80.     limits  just to make certain large files  available.  By putting these file
  81.     names in the personal directory and limited by security  level, these files
  82.     can be made available regardless of how  little time is left.  For example,
  83.     the large  files comprising RBBS-PC can be made downloadable to all callers
  84.     even though they are limited to 30 minutes.
  85.  
  86.     Access to personal  files can be limited in two ways.  First, the files can
  87.     be downloaded  only by callers  which have a  matching value in  their user
  88.     record.   For example, files can be limited  by name (any field in the user
  89.     record can be  selected).  Alternatively files  can be limited  by security
  90.     level,  meaning that  a file  can  be downloaded  by any  person with  that
  91.     security level or higher.  File access based on security level can also  be
  92.     accomplished  using the standard RBBS-PC file security mechanism, but to do
  93.     so  places the caller's under  the standard RBBS-PC  constraints of maximum
  94.     time per session/day.
  95.  
  96.     Using the "P)ersonal files" command in the files section, a caller is asked
  97.     what  files the caller wants to download.   The only files available to the
  98.     caller  for downloading  are those  explicitly listed  as belonging  to the
  99.     caller, unlike the general  download command which will look  for any named
  100.     file on the disk.  The caller can ask to List the files available.  Callers
  101.     will see only those belonging to them.
  102.  
  103.     There  is  a special  option  to  download all  and  only  the "new"  files
  104.     specifically addressed to the user by matching a field in the caller's user
  105.     record.  RBBS-PC keeps track of  whether the caller has ever downloaded the
  106.     personal file.  When listing, new personal files are marked  with an "*" in
  107.     front of their names (they are "tagged").  Selecting the new files starts a
  108.     multi-file  download for all  and only  the personal  files the  caller has
  109.     never successfully downloaded.
  110.  
  111.     Files  you want  downloaded  ONLY through  the  personal file  features  of
  112.     RBBS-PC should  be put  in their  own subdirectory  as specified  in CONFIG
  113.     parameter 142.   If you put  the personal files in  a download subdirectory
  114.     they  would be available then to anyone who  could name them.  RBBS-PC will
  115.     search the  download areas for a  personal file if  it is not found  in the
  116.     subdirectory specified in parameter 142.
  117.  
  118.     Second,  in  the same  place as  the personal  files  themselves, put  in a
  119.     special personal directory  with name  specified in  CONFIG parameter  143.
  120.     This directory is the same format  as the general file directories of RBBS-
  121.     PC.  The format is as follows:
  122.  
  123.      Default   Field
  124.     Positions  Length    Description of Field
  125.  
  126.      1 - 12      12     The first 12 characters of an entry have the file name,
  127.                         with no internal spaces.
  128.  
  129.  
  130.  
  131.     RBBS-PC 17.3A            TECHNICAL REFERENCE MANUAL                   12-12
  132.  
  133.  
  134.     13 - 73  Variable   The next group of characters can have anything in them.
  135.                         This will be  displayed to  the caller who  asks for  a
  136.                         listing,  along with  the  file name  in  the first  12
  137.                         columns.   The length  of this  group is  21 characters
  138.                         plus the length of  the upload description specified in
  139.                         CONFIG (40-46, defaults to 40).  The default  length of
  140.                         this field is 61 characters.
  141.  
  142.     74 -104  Variable   The  next  group of  characters  are  what is  used  to
  143.                         identify the file as "belonging" to the caller and must
  144.                         match  a field in the user record.  In CONFIG parameter
  145.                         43 and  parameter 44, the SysOp  specifies the position
  146.                         in the user record to use and how many characters.  The
  147.                         default is to begin  in column 1 and use  31 characters
  148.                         for the caller's name, but any field in the user record
  149.                         can be used.  Optionally, a security can be  entered in
  150.                         this last field to limit the file based on the security
  151.                         level of the  caller.   To use security  rather than  a
  152.                         match on the  user record,  simply put a  blank as  the
  153.                         first character in the  field, followed by the security
  154.                         level.
  155.  
  156.     105            1    The last character must  be an "*" to signify  that the
  157.                         file has never been  downloaded or an exclamation point
  158.                         if ever downloaded.
  159.  
  160.     This personal directory  works very  much like the  File Management  System
  161.     shared directory,  using a field  in the  user record as  the category  and
  162.     limiting  callers to their one category, or  limiting the file to the group
  163.     of  caller's with the minimum required security.  The personal directory is
  164.     fixed length and read in reverse from bottom to top.
  165.  
  166.     After setting up  or modifying the personal  directory, you use the  CONFIG
  167.     utility  parameter  187 to  check whether  the  personal directory  has the
  168.     proper format.
  169.  
  170.     The personal directory can be created by a text editor  (i.e. EDLIN) but be
  171.     sure to put in the "*" in the last column when creating a new entry so that
  172.     the file  will be tagged  as new.   Also be sure  to make each  entry fixed
  173.     length.   If the user's identity does  not fill out the  length of the last
  174.     field, be sure to pad the record with blanks out to the full length.
  175.  
  176.     When setting up  a personal  file directory there  are seven  configuration
  177.     options peculiar to personal files:
  178.  
  179.     CONFIG           Description
  180.     parameter 43      what part of the user record used to identify files as
  181.     parameter 44      belonging to the user (beginning column and length),
  182.     parameter 143     the name of the personal directory,
  183.     parameter 142     the drive and path where the personal files and personal
  184.                       directory are stored,
  185.     parameter 144     the protocol that must be used downloading,
  186.     parameter 147     whether the files downloaded are to be concatenated, and
  187.     parameter 188     the CONFIG utility to check the structure of the personal
  188.                       directory to make sure it is in the properly format.
  189.  
  190.     Parameter 147 and parameter 187 require some explanation of how they  might
  191.     be  used.   Limiting  the  caller to  a  required protocol  to  use  is not
  192.     something one would generally do.  But, for special purpose downloads, like
  193.  
  194.  
  195.  
  196.     RBBS-PC's FILE MANAGEMENT SUBSYSTEM                                   12-13
  197.  
  198.  
  199.     downloading to  a printer, one  might want to  require ASCII,  for example.
  200.     Or, if  all callers are to  use the same  communications package or  only a
  201.     particular protocol is efficient, you can specify what callers must use.
  202.  
  203.     Concatenating  files  means  that when  multiple  files  are specified  for
  204.     downloading, the files are sent  continuously in one stream of data  rather
  205.     than individually  as separate files.  In  effect, the files are physically
  206.     combined  at the  time  of downloading.    All messages  between  files are
  207.     suppressed -  the only messages  that appear to  the caller are  those that
  208.     normally occur when the first  file transfer starts and when the  last file
  209.     transfer  ends.    Concatenation  is  currently  supported  only  for ASCII
  210.     downloads.
  211.  
  212.     An example  of a  situation that might  use this  feature of  RBBS-PC is  a
  213.     business  that generates short reports for clients.   Their clients want to
  214.     call in remotely to get time-critical reports and print them right in their
  215.     office  on pre-formatted paper.  Each report  is a separate file on RBBS-PC
  216.     with all the necessary printer commands already included in each file.
  217.  
  218.     A SysOp might  set up RBBS-PC such  that the main menu was  restructured to
  219.     make the  P)ersonal files function be  P)rint reports to reflect  the  more
  220.     specialized nature  of the board.   Callers  to this board  would call  in,
  221.     identify themselves, and select P)rint reports from the main menu.  Callers
  222.     could use  L)ist to see  what is  available if  they are  looking for  some
  223.     report in particular;  just select all new reports; or ask for a particular
  224.     report if they must have it immediately.
  225.  
  226.     In the last two cases, RBBS-PC would notify the caller to set up to receive
  227.     and  press [ENTER]  when ready.   The  pre-formatted reports  with embedded
  228.     printer  control  sequences  would stream  out  onto  the  paper (including
  229.     formatting like bold  or underline) positioning the  text to fit  in boxes.
  230.     The paper  is automatically advanced as  needed.  When done,  RBBS-PC beeps
  231.     the user,  who then  turns the  "save to printer"  feature off  of whatever
  232.     communications package is being used.
  233.  
  234.     To set up this application,  the personal file options would  be configured
  235.     to use  the caller's id  (e.g. account  number).  The  files and  directory
  236.     would be  put in a special subdirectory not shared with anything else.  The
  237.     CONFIG  parameters would be  set to  specify that  caller's must  use ASCII
  238.     ("A") as their protocol and that multi-file downloads will be concatenated.
  239.  
  240.     Another example is  that of an electronic job placement service that wanted
  241.     to limit non-subscribers to a  security level 5 with 10 minutes.   However,
  242.     they also  want non-subscribes to be  able to download a  file of potential
  243.     employment opportunities that may take more than 10 minutes.  The following
  244.     entries would be put into PRIV.DIR:
  245.  
  246.     JOBSFORU.ARC   282888  07-14-87  List of job opportunities you might want 5
  247.               /|\                                                           /|\
  248.               12                                                            74
  249.  
  250.     Each record  is padded with blanks  so that 29 blank  characters follow the
  251.     security  level, followed  by  an '*'.     The  '*' is  not  shown in  this
  252.     documentation since it is in a column too far to the right.
  253.  
  254.  
  255.  
  256.     RBBS-PC 17.3A            TECHNICAL REFERENCE MANUAL                   12-14
  257.  
  258.  
  259.     12.8 Automatically Checking & Converting Uploaded Files
  260.     -------------------------------------------------------
  261.  
  262.     Verifying the Integrity of a File
  263.     ---------------------------------
  264.     RBBS-PC's  on-going commitment  to  providing SysOps  with  the ability  to
  265.     protect themselves and their callers is reflected in precisely this kind of
  266.     feature.  When  a file  is uploaded, RBBS-PC  will look for  a file  called
  267.     T<ext>.BAT (where <ext> is the characters that make up the extension of the
  268.     uploaded  file).   RBBS-PC  looks  for  this file  on  the  drive and  path
  269.     specified in CONFIG parameter 105.  If this file exits,  RBBS-PC will SHELL
  270.     to either:
  271.  
  272.          a.)  the program specified in the file (if it only has one line) or
  273.          b.)  to the .BAT file itself.
  274.  
  275.     In this way a SysOp may install whatever processing is desired after a file
  276.     has been uploaded.
  277.  
  278.     If the BAT file contains exactly 1 line, RBBS-PC will shell to the contents
  279.     of the bat file, passing on the command line the two parameters:
  280.  
  281.          a.)  the name of the file upload (first) and
  282.          b.)  the name of the file to write the results to (second)
  283.  
  284.     If the BAT file contains more than one line, RBBS-PC will  SHELL to the BAT
  285.     file itself,  passing
  286.  
  287.          a.)  the name of the file upload for "[1]" and
  288.          b.)  the name of the file to write the results to for "[2]"
  289.  
  290.     as the first and second parameters, respectively.
  291.  
  292.     RBBS-PC will  consider the upload  to have failed  and delete  the uploaded
  293.     file, if  the file  to which the  results are  to be  written has a  length
  294.     greater than 2 bytes.  The BAT file should either
  295.  
  296.          a.) not write a result file or
  297.          b.) leave an empty one if the upload is okay.
  298.  
  299.     If the file that was uploaded is not okay, the  external application should
  300.     write out some error message more than 2 bytes long.
  301.  
  302.     A typical use for this feature of RBBS-PC is to test the compression of the
  303.     uploaded  file and  pipe the results  to a  text scanner that  looks for an
  304.     error string and redirects the output to a file if an error is found.   For
  305.     example  if files  that are  uploaded with  the extension  .ZIP were  to be
  306.     tested, a SysOp might create the file TZIP.BAT
  307.  
  308.              PKUNZIP -T [1] | FGREP "error in a" > [2]
  309.  
  310.     An alternative implementation is:
  311.  
  312.              PKUNZIP -T %1
  313.              IF ERRORLEVEL 1 ECHO BAD UPLOAD > %2
  314.              SETERROR 0
  315.  
  316.     Under versions  of QuickBASIC prior to  4.5, programs that  reset the error
  317.     level cause illegal function call 5 upon return from the  SHELL.  Therefore
  318.  
  319.  
  320.  
  321.     RBBS-PC's FILE MANAGEMENT SUBSYSTEM                                   12-15
  322.  
  323.  
  324.     it is necessary to  run a utility to reset the error level back to 0 before
  325.     going back to RBBS-PC.  This is what the SETERROR.EXE file does.
  326.  
  327.     The  recommended procedure is to  use PKUNZIP, check  errorlevel, and reset
  328.     error level  to 0.  PKUNZIP  outs somewhat variable strings  when different
  329.     errors occur, making a filter based on text more difficult to implement.
  330.  
  331.     Converting Uploads
  332.     ------------------
  333.     RBBS-PC can  be configured by the SysOp to cause uploads with extension <u-
  334.     ext> to  be converted to  the default extension  <d-ext>.  To do  this, the
  335.     SysOp  must put  a  file named  C<u-ext><d-ext>.BAT on  the drive  and path
  336.     specified in  CONFIG parameter 105.  If the file exists, RBBS-PC will SHELL
  337.     to it.
  338.  
  339.     If the SysOp wants all .ARC files uploaded converted to a .ZIP file, create
  340.     a file CARCZIP.BAT in  the subdirectory specified in CONFIG  parameter 105.
  341.     To  convert  .PAK files  to  .ZIP, create  the  file  CPAKZIP.BAT.   Sample
  342.     conversion batch files are included on the RBBS-PC distribution diskettes.
  343.  
  344.     12.9 Fast File Search
  345.     ---------------------
  346.     RBBS-PC 17.3 includes  an enhanced file-search  capability for uploads  and
  347.     downloads.  This enhancement has two advantages:
  348.  
  349.     (a)  File searches are much faster.  In the case of very slow devices like
  350.          a CD-ROM, this can be the  difference between sub-second response and
  351.          a 45 second response.   File searches are now virtually instantaneous.
  352.  
  353.     (b)  Files not stored on this system can trigger macros.   This allows
  354.          requests for files stored elsewhere, either off line on backups, or on
  355.          other cooperating systems, to trigger later processing.
  356.  
  357.     The basis  for the fast file search is a file, configuration parameter 267,
  358.     which is  a sorted  list  of file  names available  for  downloading.   The
  359.     default name is FIDX.DEF.
  360.  
  361.     The format of this file is:
  362.  
  363.     columns 1-12:  file name
  364.     columns 13-16: location index (1, 2, 3, ...)
  365.     columns 17-18: carriage return line feed.
  366.  
  367.     All data is stored as  character data and the file is editable.    The file
  368.     names must  be stored with no  internal spaces and a  period separating the
  369.     prefix from the extension.    The list of file names MUST BE SORTED BY FILE
  370.     NAME in order for the fast file search to work.
  371.  
  372.     The location  index is the record number (line number) of the locator file,
  373.     whose default name is LIDX.DEF, and has the following layout:
  374.  
  375.     columns 1-63:  location of file
  376.     column  64:    any character.  MAKEFIDX puts in a period.
  377.     columns 65-66: carriage return line feed.
  378.  
  379.     This  file  is all  character  data and  is  editable.     Essentially, the
  380.     location index points to a record in the location  file.   E.g. if FIDX.DEF
  381.     has
  382.  
  383.  
  384.  
  385.  
  386.     RBBS-PC 17.3A            TECHNICAL REFERENCE MANUAL                   12-16
  387.  
  388.  
  389.     RBBS-BAS.ZIP   2
  390.     HARPIE.ARC     3
  391.  
  392.     and LIDX.DEF has
  393.  
  394.     C:\DOWN1\
  395.     C:\DOWN2\
  396.     C:\UP\
  397.  
  398.     Then  RBBS-BAS.ZIP  is  located  in  directory  C:\DOWN2 (2nd  record)  and
  399.     HARPIE.ARC is located in C:\UP (3rd record).
  400.  
  401.     The  location field should  be a drive/path  terminating with a  "\" if any
  402.     path is given, and file must be filled with blanks through column 63 if the
  403.     path is shorter.   You must put some  character in column 64. Many  editors
  404.     delete  trailing blanks,  so you  should probably  put in  a non-blank.   A
  405.     period is a suitable choice.
  406.  
  407.     RBBS-PC will  use a binary search  on the first 12  characters in FIDX.DEF.
  408.     This binary search can be significantly speeded by provided "tabs" for this
  409.     file, indicating the record at which the first file is that begins with the
  410.     symbols "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".    This is  like the "tabs"
  411.     you see on dictionaries, so you can directly turn to the B's, for example.
  412.     A tab file has the same prefix as the file name file, except that it adds a
  413.     "T".  For "FIDX.DEF",  the tab file  would be "FIDXT.DEF".    RBBS-PC  will
  414.     automatically detect and  use a tab  file if available.     The tab has  72
  415.     characters in it.   Each 2 bytes represents a binary integer whose value is
  416.     the record  number in FIDX.DEF where the first file occurs that begins with
  417.     the  respective symbols above.  Thus bytes  3-4 show where files begin with
  418.     "1" and bytes 69-70 where files begin with "Y".
  419.  
  420.     Two utilities  with source code are  provided for setting up  the fast file
  421.     searches.   The source, for compiling under QB 4.5, is included.
  422.  
  423.     MAKEFIDX will create both  the file name  list (FIDX.DEF) and the  location
  424.     file (LIDX.DEF), from a list of directories (see MAKEFIDX.CFG) or a list of
  425.     file names, or both.
  426.  
  427.     You must  next sort FIDX.DEF  by file name.   A good shareware  utility for
  428.     this is QSORT (QSORT FIDX.DEF /1:12).
  429.  
  430.     MAKETABS will  create a  tab file  (FIDXT.DEF) from  the  sorted file  list
  431.     FIDX.DEF.
  432.  
  433.     A sample  batch file for recreating  a fast file system  is MAKEFFS.BAT. It
  434.     uses   MAKEFIDX.EXE,  QSORT.EXE,   MAKETABS.EXE,  and   configuration  file
  435.     MAKEFIDX.KG.     You need  only edit  MAKEFIDX.KG  to change  the filespecs
  436.     (/FileSpec=) to  match where your files  are, and where to  write the index
  437.     files.
  438.  
  439.     Reconfiguring to Take Maximal Advantage of Fast File Searches
  440.     -------------------------------------------------------------
  441.     The fast file search is virtually instantaneous on an 8088 with a  tab file
  442.     for 5000 file entries.   The savings on wear and tear on the hard disk  can
  443.     be very  significant as well.    And the time  it takes to set  up the fast
  444.     file  search is only a  few minutes.  Most SysOps,  therefore, will want to
  445.     implement fast file searching, whether or  not they have a slow device like
  446.     a CD-ROM.
  447.  
  448.  
  449.  
  450.  
  451.     RBBS-PC's FILE MANAGEMENT SUBSYSTEM                                   12-17
  452.  
  453.  
  454.     RBBS-PC will first search through the drive/paths specified in config to be
  455.     available  for downloading, as it always did.    Files not found there will
  456.     then be searched using the fast  file search system. The way the  fast file
  457.     search works  is that a file  found in its list  is looked for  only in the
  458.     designated location.  Nothing else is searched.
  459.  
  460.     The  optimal way  to implement fast  file searching  is to  reconfigure the
  461.     drive/paths available for downloading down to at most the upload directory,
  462.     and let the fast file search handle everything else.   That way, files will
  463.     be searched first  in the upload area,  and those not  found at first  will
  464.     then be searched using the fast file search system. Note that every file in
  465.     the fast  file search list  is considered to  be available  for downloading
  466.     whether or not its drive/path  is listed in the configuration program  as a
  467.     downloadable area.   Note  that  you can  have  separate fast  file  search
  468.     systems  available for each  sub-board.    You can  also use the  fast file
  469.     search  for  common  files  and  have a  separate  download  area  for  the
  470.     sub-boards. Note that whenever  you relocate files, you must  re-create the
  471.     fast file search system.   This is not hard since it  takes little time and
  472.     can be automated.
  473.  
  474.     Macros with the Fast File Search
  475.     --------------------------------
  476.     The location file for the  FFS (LIDX.DEF) can have in it "M! <macro file>",
  477.     where "<macro  file>" is the  name of  a macro, instead  of a drive/path.
  478.     RBBS-PC  will  then  execute  the  macro.     Thus,  you  can  have special
  479.     processing for classes of files, perhaps to
  480.  
  481.     o    advise that the upload is not wanted
  482.  
  483.     o    tell the caller on what other BBS the file can be found
  484.  
  485.     RBBS-PC will put a "U", "D", or "V" in work variable 1 depending on whether
  486.     the file request is to upload, download, or view, so that you can customize
  487.     your macro for the  situation.   This if you want to display a message only
  488.     on an upload, you could have UNWANT.IMC with
  489.  
  490.          0
  491.          {ON [1]
  492.          {==U
  493.          {*B
  494.  
  495.          The file {C1{FI{C0 is {C2NOT WANTED{C0 here.
  496.          Please do not upload it.
  497.  
  498.          {END
  499.          {END ON
  500.  
  501.     RBBS-PC regards the  file as not found when a macro  is executed.  However,
  502.     you can inside the macro  use the macro command "LO" to set a location that
  503.     RBBS-PC will use to look for  the file, the same as if the  drive/path were
  504.     given  in LIDX.DEF.    Thus, you can  use macros for files  that really are
  505.     present.    For example, if RBBS-EXE.ZIP is downloaded, the file is located
  506.     in D:\D1,  and the entry RBBS-EXE.ZIP in FIDX.DEF is  mapped to a record in
  507.     LIDX.DEF with the entry "M!  C:\RBBS\DWNRBBS.IMC", then the following macro
  508.     displays a special message but still causes the file to be found:
  509.  
  510.          0
  511.          {ON [1]
  512.          {==D
  513.  
  514.  
  515.  
  516.     RBBS-PC 17.3A            TECHNICAL REFERENCE MANUAL                   12-18
  517.  
  518.  
  519.          {*B
  520.  
  521.          Congratulations.  You are about to download the best BBS!
  522.          Call me voice at 703-978-4339 if you need any help.
  523.  
  524.          {END
  525.          {LO D:\D1\
  526.          {END ON
  527.  
  528.